.index {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100vw;
  height: 100vh;
  box-sizing: border-box;
  overflow: hidden;

  .wrapper {
    display: grid;
    grid-template-rows: repeat(3, 1fr);
    grid-template-columns: repeat(4, 1fr);
    place-items: center;
    min-width: 800px;
    min-height: 600px;
    width: 70vw;
    height: 60vh;

    .placehoder {
      padding: 0.7rem;
      border: .7rem dashed hsla(192, 100%, 50%, 1);

      &.highlight {
        background-color: rgba(255, 255, 255, 0.7);
        border: 0.7rem dashed hsla(32, 100%, 50%, 1);
      }

      .item_container {
        padding: .1rem;
        width: 7rem;
        height: 7rem;
        border: .3rem dotted hsla(128, 100%, 50%, 1);

        &.current {
          border: .3rem dotted hsla(192, 100%, 50%, 1);
        }

        .card {
          display: flex;
          justify-content: center;
          align-items: center;
          width: 100%;
          height: 100%;
          font-size: 3rem;
          background-color: hsla(168, 80%, 80%, 1);
          cursor: pointer;
          user-select: none;
        }
      }
    }
  }
}